/*
 * ProgressNote.h
 *
 *  Created on: Jan 11, 2009
 *      Author: cata
 */

#ifndef PROGRESSNOTE_H_
#define PROGRESSNOTE_H_

#include <eikprogi.h>
#include <aknwaitdialog.h>
#include <AknProgressDialog.h>
// Link against eikctl.lib
#include "Events.h"

class  CProgressNote : public CBase, public MProgressDialogCallback
{
public:
    TEvent0<void> DismissedByUser;
public:
    static CProgressNote* NewL();
   ~CProgressNote();

   void StartWaitNoteL(const TDesC& aText);
   void StartProgressNoteL(TInt aFinalValue);
   void UpdateProcessL(TInt aProgress,const TDesC& aProgressText);

protected:// other system interface functions
   void DialogDismissedL (TInt aButtonId);

private:
   CAknProgressDialog*  iProgressDialog;
   CEikProgressInfo*    iProgressInfo;
   CAknWaitDialog*      iWaitDialog;
};

#endif /* PROGRESSNOTE_H_ */
